Virtual network function VNF deployment method and apparatus

ABSTRACT

A virtual network function (VNF) deployment method and apparatus, the method including separately setting indication information of a common parameter and dedicated parameter in a virtual network function descriptor (VNFD), to indicate a source of a value of the common parameter and a source of a value of the dedicated parameter, where the common parameter and the dedicated parameter are included in input parameters. When assigning values to the common parameter and the dedicated parameter, a virtualization service provider obtains the value of the common parameter based on the indication information of the common parameter, and obtains the value of the dedicated parameter based on the indication information of the dedicated parameter.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of International Application No.PCT/CN2020/095804, filed on Jun. 12, 2020. The International Applicationclaims priority to Chinese Application No. 201910517265.1, filed on Jun.14, 2019. The afore-mentioned patent applications are herebyincorporated by reference in their entirety.

TECHNICAL FIELD

This application relates to the field of network functionvirtualization, and in particular, to a virtual network function (VNF)deployment method and an apparatus.

BACKGROUND

In a network function virtualization (NFV) technology, a virtualizationtechnology is used to virtualize a function of a dedicated device in aconventional network into an independent application, and flexiblydeploy the application on a unified infrastructure platform constructedbased on other standard devices such as computing hardware, storagehardware, and network hardware. In an NFV system, a party that initiatesa virtual network function (VNF) instantiation request may be referredto as a virtualization service requestor. A party that receives the VNFinstantiation request and deploys a VNF based on the VNF instantiationrequest may be referred to as a virtualization service provider. Afterreceiving the VNF instantiation request, the virtualization serviceprovider further needs to obtain a VNF descriptor (VNFD). The VNFDincludes input parameters (“inputs”) required for deploying the VNF, andthe VNF instantiation request includes values of the input parameters.After assigning values to the input parameters, the virtualizationservice provider deploys the VNF based on an updated VNFD.

Because requirements of VNFs are different, input parameters included inVNFDs corresponding to different VNFs are also different. To facilitateadaptation of all input parameters of different VNFs into the VNFinstantiation request, a European Telecommunications Standards Institute(europe telecommunications standards institute, ETSI) NFV standardspecifies that all service-related dedicated parameters in the inputparameters are defined as a modifiable attributes parameter(“modifiable_attributes”), and the virtualization service provider isnotified of a value of the modifiable attributes parameter by using aModify VNF Information operation (“ModifyVnfInfo”). In this case, theVNF instantiation request includes the value of the modifiableattributes parameter and a value of a common parameter related to allVNFs. Although the virtualization service provider may learn of thevalue of the modifiable attributes parameter by using the Modify VNFInformation operation, a conventional technology does not include asolution for assigning a value to a modifiable attributes parameter inthe VNFD by using the value of the modifiable attributes parameterincluded in the Modify VNF Information operation. Therefore, thevirtualization service provider can assign a value to only a commonparameter in the VNFD by using the value of the common parameterincluded in the VNF instantiation request, but cannot assign a value tothe modifiable attributes parameter in the VNFD. As a result, VNFdeployment fails.

SUMMARY

This application provides a virtual network function (VNF) deploymentmethod and an apparatus, to resolve a problem of how to assign a valueto a modifiable attributes parameter in a VNFD.

To achieve the foregoing objective, the following technical solutionsare used in this application.

According to a first aspect, this application provides a VNF deploymentmethod. The method may be applied to an application deployment server,or the method may be applied to a communication apparatus that cansupport the application deployment server in implementing the method.For example, the communication apparatus includes a chip system. In someembodiments, the application deployment server may be a VNF manager (VNFmanager, VNFM). The method includes after a Modify VNF Informationoperation is received, obtaining a VNFD of a first VNF, and assigning Ndedicated parameters and a value of each dedicated parameter to amodifiable attributes parameter in the VNFD based on a second assignmentindication, to obtain a first updated VNFD, where the Modify VNFInformation operation includes the modifiable attributes parameter, themodifiable attributes parameter includes the N dedicated parameters andthe value of each dedicated parameter, the N dedicated parameters andthe value of each dedicated parameter are parameters required forinstantiating the first VNF, N is an integer, and N≥1, where the VNFD ofthe first VNF includes M common parameters, the modifiable attributesparameter, M first assignment indications, and one second assignmentindication, one of the first assignment indications is used to indicateto obtain a value of one common parameter from a virtualization servicerequestor, the second assignment indication is used to indicate toobtain a value of the modifiable attributes parameter from avirtualization service provider, M is an integer, and N≥1, and after aVNF instantiation request is received, assigning the values of the Mcommon parameters to corresponding common parameters in the firstupdated VNFD based on the first assignment indications, to obtain asecond updated VNFD, and deploying the first VNF based on the secondupdated VNFD. The VNF instantiation request includes the M commonparameters and the value of each common parameter, and the M commonparameters and the value of each common parameter are parametersrequired for instantiating the first VNF.

According to a second aspect, this application provides a VNF deploymentmethod. The method may be applied to an application deployment server,or the method may be applied to a communication apparatus that cansupport the application deployment server in implementing the method.For example, the communication apparatus includes a chip system. In someembodiments, the application deployment server may be a VNFM. The methodincludes after a Modify VNF Information operation and a VNFinstantiation request are received, obtaining a VNFD of a first VNF,assigning values of M common parameters to corresponding commonparameters in the VNFD based on first assignment indications, assigningN dedicated parameters and a value of each dedicated parameter to amodifiable attributes parameter in the VNFD based on a second assignmentindication, to obtain a first updated VNFD, and deploying the first VNFbased on the first updated VNFD. The Modify VNF Information operationincludes the modifiable attributes parameter, the modifiable attributesparameter includes the N dedicated parameters and the value of eachdedicated parameter, the N dedicated parameters and the value of eachdedicated parameter are parameters required for instantiating the firstVNF, N is an integer, and N≥1. The VNF instantiation request includesthe M common parameters and the value of each common parameter, the Mcommon parameters and the value of each common parameter are parametersrequired for instantiating the first VNF, M is an integer, and M≥1. TheVNFD of the first VNF includes the M common parameters, the modifiableattributes parameter, M first assignment indications, and one secondassignment indication, one of the first assignment indications is usedto indicate to obtain a value of one common parameter from avirtualization service requestor, and the second assignment indicationis used to indicate to obtain a value of the modifiable attributesparameter from a virtualization service provider.

According to the VNF deployment method provided in this application, inthe VNFD, indication information is separately set for a commonparameter and a dedicated parameter, to indicate a source of a value ofthe common parameter and a source of a value of the dedicated parameter,where the common parameter and the dedicated parameter are included ininput parameters. When the application deployment server assigns valuesto the common parameter and the dedicated parameter, the applicationdeployment server is enabled to assign the value to the common parameterin the VNFD based on the first assignment indication, and assign thevalue to the modifiable attributes parameter in the VNFD based on thesecond assignment indication, so that all input parameters in the VNFDare assigned with values, and the VNF is successfully deployed.

In a possible implementation, the virtualization service requestor is anNFV orchestrator (NFVO) or an operation-support system/business supportsystem (OSS/BSS). The virtualization service requestor may be userequipment. The virtualization service provider is the VNFM. Thevirtualization service provider may be the application deploymentserver.

In another possible implementation, before the Modify VNF Informationoperation is received, the method further includes after a Create VNFIdentifier operation sent by the NFVO is received, creating an instanceidentifier of the first VNF, establishing a correspondence between theinstance identifier of the first VNF and an identifier of the VNFD ofthe first VNF, and sending the instance identifier of the first VNF tothe NFVO. The Create VNF Identifier operation includes the identifier ofthe VNFD of the first VNF.

In another possible implementation, the obtaining a VNFD of a first VNFincludes sending a VNFD obtaining request to the NFVO, where the VNFDobtaining request includes the identifier of the VNFD of the first VNF,and receiving a VNFD response sent by the NFVO, where the VNFD responseincludes the VNFD of the first VNF.

In another possible implementation, the Modify VNF Information operationfurther includes the instance identifier of the first VNF, and the VNFinstantiation request further includes the instance identifier of thefirst VNF, and before the values are assigned to the N common parametersand the modifiable attributes parameter in the VNFD, the method furtherincludes determining the identifier of the VNFD of the first VNFassociated with the instance identifier of the first VNF, anddetermining the VNFD of the first VNF based on the identifier of theVNFD of the first VNF.

In another possible implementation, after the instance identifier of thefirst VNF is created, the method further includes creating VNFinformation storage space, where the VNF information storage space isused to store the N dedicated parameters and the value of each dedicatedparameter. Therefore, the application deployment server can obtain thevalue of the modifiable attributes parameter from the VNF informationstorage space, and assign the value to the modifiable attributesparameter in the VNFD, to assign values to all input parameters in theVNFD, and successfully deploy the VNF.

According to a third aspect, this application provides a VNF deploymentmethod. The method may be applied to user equipment, or the method maybe applied to a communication apparatus that can support the userequipment in implementing the method. For example, the communicationapparatus includes a chip system. In some embodiments, the userequipment may be an NFVO. The method includes sending a Modify VNFInformation operation, where the Modify VNF Information operationincludes a modifiable attributes parameter, the modifiable attributesparameter includes N dedicated parameters and a value of each dedicatedparameter, the N dedicated parameters and the value of each dedicatedparameter are parameters required for instantiating a first VNF, N is aninteger, and N≥1, sending a VNFD of the first VNF, where the VNFD of thefirst VNF includes M common parameters, the modifiable attributesparameter, M first assignment indications, and one second assignmentindication, one of the first assignment indications is used to indicateto obtain a value of one common parameter from a virtualization servicerequestor, and the second assignment indication is used to indicate toobtain a value of the modifiable attributes parameter from avirtualization service provider, and sending a VNF instantiationrequest, where the VNF instantiation request includes the M commonparameters and the value of each common parameter, the M commonparameters and the value of each common parameter are parametersrequired for instantiating the first VNF, M is an integer, and M≥1.

According to a fourth aspect, this application provides a VNF deploymentmethod. The method may be applied to user equipment, or the method maybe applied to a communication apparatus that can support the userequipment in implementing the method. For example, the communicationapparatus includes a chip system. In some embodiments, the userequipment may be an NFVO. The method includes sending a Modify VNFInformation operation, where the Modify VNF Information operationincludes a modifiable attributes parameter, the modifiable attributesparameter includes N dedicated parameters and a value of each dedicatedparameter, the N dedicated parameters and the value of each dedicatedparameter are parameters required for instantiating a first VNF, N is aninteger, and N≥1, sending a VNF instantiation request, where the VNFinstantiation request includes M common parameters and a value of eachcommon parameter, the M common parameters and the value of each commonparameter are parameters required for instantiating the first VNF, M isan integer, and M≥1, sending a VNFD of the first VNF, where the VNFD ofthe first VNF includes the M common parameters, the modifiableattributes parameter, M first assignment indications, and one secondassignment indication, one of the first assignment indications is usedto indicate to obtain a value of one common parameter from avirtualization service requestor, and the second assignment indicationis used to indicate to obtain a value of the modifiable attributesparameter from a virtualization service provider.

According to the VNF deployment method provided in this application, inthe VNFD, indication information is separately set for a commonparameter and a dedicated parameter, to indicate a source of a value ofthe common parameter and a source of a value of the dedicated parameter,where the common parameter and the dedicated parameter are included ininput parameters. When an application deployment server assigns valuesto the common parameter and the dedicated parameter, the applicationdeployment server is enabled to assign the value to the common parameterin the VNFD based on the first assignment indication, and assign thevalue to the modifiable attributes parameter in the VNFD based on thesecond assignment indication, so that all input parameters in the VNFDare assigned with values, and the VNF is successfully deployed.

In a possible implementation, the virtualization service requestor isthe NFVO or an OSS/a BSS. The virtualization service requestor may bethe user equipment. The virtualization service provider is a VNFM. Thevirtualization service provider may be the application deploymentserver.

In another possible implementation, when one of the first assignmentindications is used to indicate to obtain a value of one commonparameter from the NFVO, before the NFVO sends the VNF instantiationrequest, the method further includes setting, by the NFVO, the value ofthe common parameter.

In another possible implementation, before the Modify VNF Informationoperation is sent, the method further includes sending a Create VNFIdentifier operation, receiving an instance identifier of the first VNF,and storing the instance identifier of the first VNF. The Create VNFIdentifier operation includes an identifier of the VNFD of the firstVNF.

In another possible implementation, before the VNFD of the first VNF issent, the method includes after a VNFD obtaining request that includesthe identifier of the VNFD of the first VNF is received, obtaining theVNFD of the first VNF based on the identifier of the VNFD of the firstVNF, and sending a VNFD response, where the VNFD response includes theVNFD of the first VNF.

According to a fifth aspect, this application further provides acommunication apparatus, configured to implement the method described inthe first aspect or the second aspect. The communication apparatus is anapplication deployment server or a communication apparatus that supportsthe application deployment server in implementing the method describedin the first aspect or the second aspect. For example, the communicationapparatus includes a chip system. For example, the communicationapparatus includes a receiving unit and a processing unit. The receivingunit is configured to receive a Modify VNF Information operation, wherethe Modify VNF Information operation includes a modifiable attributesparameter, the modifiable attributes parameter includes N dedicatedparameters and a value of each dedicated parameter, the N dedicatedparameters and a value of each dedicated parameter are parametersrequired for instantiating a first VNF, N is an integer, and N≥1. Thereceiving unit is further configured to obtain a virtual networkfunction descriptor VNFD of the first VNF, where the VNFD of the firstVNF includes M common parameters, the modifiable attributes parameter, Mfirst assignment indications, and one second assignment indication, oneof the first assignment indications is used to indicate to obtain avalue of one common parameter from a virtualization service requestor, asecond assignment indication is used to indicate to obtain a value ofthe modifiable attributes parameter from a virtualization serviceprovider, M is an integer, and M≥1. The processing unit is configured toassign the N dedicated parameters and the value of each dedicatedparameter to the modifiable attributes parameter in the VNFD based onthe second assignment indication, to obtain a first updated VNFD. Thereceiving unit is further configured to receive a VNF instantiationrequest, where the VNF instantiation request includes the M commonparameters and the value of each common parameter, and the M commonparameters and the value of each common parameter are parametersrequired for instantiating the first VNF. The processing unit is furtherconfigured to assign the values of the M common parameters tocorresponding common parameters in the first updated VNFD based on thefirst assignment indications, to obtain a second updated VNFD. Theprocessing unit is further configured to deploy the first VNF based onthe second updated VNFD. Optionally, the processing unit is configuredto assign the values of the M common parameters to the correspondingcommon parameters in the VNFD based on the first assignment indications,and assign the N dedicated parameters and the value of each dedicatedparameter to the modifiable attributes parameter in the VNFD based onthe second assignment indication, to obtain the first updated VNFD. Theprocessing unit is further configured to deploy the first VNF based onthe first updated VNFD.

Optionally, the communication apparatus may further include a sendingunit. The sending unit is configured to send an instance identifier ofthe first VNF to an NFVO. The sending unit is further configured to senda VNFD obtaining request to the NFVO, where the VNFD obtaining requestincludes an identifier of the VNFD of the first VNF.

According to a sixth aspect, this application further provides acommunication apparatus, configured to implement the method described inthe third aspect or the fourth aspect. The communication apparatus isuser equipment or a communication apparatus that supports the userequipment in implementing the method described in the third aspect orthe fourth aspect. For example, the communication apparatus includes achip system. For example, the communication apparatus includes a sendingunit. The sending unit is configured to send a Modify VNF Informationoperation, where the Modify VNF Information operation includes amodifiable attributes parameter, the modifiable attributes parameterincludes N dedicated parameters and a value of each dedicated parameter,the N dedicated parameters and the value of each dedicated parameter areparameters required for instantiating a first VNF, N is an integer, andN≥1. The sending unit is further configured to send a virtual networkfunction descriptor VNFD of the first VNF, where the VNFD of the firstVNF includes M common parameters, the modifiable attributes parameter, Mfirst assignment indications, and one second assignment indication, oneof the first assignment indications is used to indicate to obtain avalue of one common parameter from a virtualization service requestor,and the second assignment indication is used to indicate to obtain avalue of the modifiable attributes parameter from a virtualizationservice provider. The sending unit is further configured to send a VNFinstantiation request, where the VNF instantiation request includes theM common parameters and the value of each common parameter, the M commonparameters and the value of each common parameter are parametersrequired for instantiating the first VNF, M is an integer, and M≥1.

Optionally, the communication apparatus may further include a processingunit, configured to set the value of the common parameter.

In the VNFD, the communication apparatus provided in this application,separately sets indication information of a common parameter anddedicated parameter, to indicate a source of a value of the commonparameter and a source of a value of the dedicated parameter, where thecommon parameter and the dedicated parameter are included in inputparameters. When assigning values to the common parameter and thededicated parameter, the communication apparatus is enabled to assignthe value to the common parameter in the VNFD based on the firstassignment indication, and assign the value to the modifiable attributesparameter in the VNFD based on the second assignment indication, so thatall input parameters in the VNFD are assigned with values, and the VNFis successfully deployed.

In a possible implementation, the virtualization service requestor is anNFVO or an OSS/a BSS. The virtualization service requestor may be theuser equipment. The virtualization service provider is a VNFM. Thevirtualization service provider may be an application deployment server.

It should be noted that function modules in the fifth aspect and thesixth aspect may be implemented by using hardware, or may be implementedby using hardware executing corresponding software. The hardware orsoftware includes one or more modules corresponding to the foregoingfunctions. For example, a transceiver is configured to completefunctions of the receiving unit and the sending unit, a processor isconfigured to complete a function of the processing unit, and a memoryis configured to store program instructions used by the processor toperform the methods in this application. The processor, the transceiver,and the memory are connected by using a bus and implement mutualcommunication. Specifically, refer to functions of behaviors of theapplication deployment server or the user equipment in the methodaccording to the first aspect to the method according to the fourthaspect.

According to a seventh aspect, this application further provides acommunication apparatus, configured to implement the method described inthe first aspect or the second aspect. The communication apparatus is anapplication deployment server or a communication apparatus that supportsthe application deployment server in implementing the method describedin the first aspect or the second aspect. For example, the communicationapparatus includes a chip system. For example, the communicationapparatus includes a processor, configured to implement functions of themethod described in the first aspect or the second aspect. Thecommunication apparatus may further include a memory, configured tostore program instructions and data. The memory is coupled to theprocessor. The processor invokes and executes the program instructionsstored in the memory, to implement the function in the method describedin the first aspect or the second aspect. The communication apparatusmay further include a communication interface, and the communicationinterface is used by the communication apparatus to communicate withanother device. For example, if the communication apparatus is anapplication deployment server, the another device is user equipment.

In a possible device, the communication interface may be a transceiver.The processor is configured to assign values of M common parameters tocorresponding common parameters in a VNFD based on first assignmentindications, and assign N dedicated parameters and a value of eachdedicated parameter to a modifiable attributes parameter in the VNFDbased on a second assignment indication, to obtain a first updated VNFD,and deploy a first VNF based on the first updated VNFD.

According to an eighth aspect, this application further provides acommunication apparatus, configured to implement the method described inthe third aspect or the fourth aspect. The communication apparatus isuser equipment or a communication apparatus that supports the userequipment in implementing the method described in the third aspect orthe fourth aspect. For example, the communication apparatus includes achip system. For example, the communication apparatus includes aprocessor, configured to implement functions of the method described inthe third aspect or the fourth aspect. The communication apparatus mayfurther include a memory, configured to store program instructions anddata. The memory is coupled to the processor. The processor invokes andexecutes the program instructions stored in the memory, to implement thefunction in the method described in the third aspect or the fourthaspect. The communication apparatus may further include a communicationinterface, and the communication interface is used by the communicationapparatus to communicate with another device. For example, if thecommunication apparatus is user equipment, the another device is anapplication deployment server.

In a possible device, the communication interface may be a transceiver.The transceiver is configured to send a Modify VNF Informationoperation, where the Modify VNF Information operation includes amodifiable attributes parameter, the modifiable attributes parameterincludes N dedicated parameters and a value of each dedicated parameter,the N dedicated parameters and the value of each dedicated parameter areparameters required for instantiating a first VNF, N is an integer, andN≥1, send a VNF instantiation request, where the VNF instantiationrequest includes M common parameters and a value of each commonparameter, the M common parameters and the value of each commonparameter are parameters required for instantiating the first VNF, M isan integer, and M≥1, send a VNFD of the first VNF, where the VNFD of thefirst VNF includes the M common parameters, the modifiable attributesparameter, M first assignment indications, and one second assignmentindication, one of the first assignment indications is used to indicateto obtain a value of one common parameter from a virtualization servicerequestor, and the second assignment indication is used to indicate toobtain a value of the modifiable attributes parameter from avirtualization service provider.

According to a ninth aspect, this application further provides acomputer-readable storage medium, including computer softwareinstructions. When the computer software instructions are run on acommunication apparatus, the communication apparatus is enabled toperform the method according to any one of the first aspect to thefourth aspect.

According to a tenth aspect, this application further provides acomputer program product including instructions. When the computerprogram product runs on a communication apparatus, the communicationapparatus is enabled to perform the method according to any one of thefirst aspect to the fourth aspect.

According to an eleventh aspect, this application provides a chipsystem. The chip system includes a processor, and may further include amemory, to implement the function of the application deployment serveror the user equipment in the foregoing methods. The chip system mayinclude a chip, or may include a chip and another discrete component.

According to a twelfth aspect, this application further provides acommunication system. The communication system includes the applicationdeployment server described in the fifth aspect or a communicationapparatus that supports the application deployment server inimplementing the method described in the first aspect, and the userequipment described in the sixth aspect or a communication apparatusthat supports the user equipment in implementing the method described inthe third aspect.

Alternatively, the communication system includes the applicationdeployment server described in the fifth aspect or the communicationapparatus that supports the application deployment server inimplementing the method described in the second aspect, and the userequipment described in the sixth aspect or the communication apparatusthat supports the user equipment in implementing the method described inthe fourth aspect.

Alternatively, the communication system includes the applicationdeployment server described in the seventh aspect or the communicationapparatus that supports the application deployment server inimplementing the method described in the first aspect, and the userequipment described in the eighth aspect or the communication apparatusthat supports the user equipment in implementing the method described inthe third aspect.

Alternatively, the communication system includes the applicationdeployment server described in the seventh aspect or the communicationapparatus that supports the application deployment server inimplementing the method described in the second aspect, and the userequipment described in the eighth aspect or the communication apparatusthat supports the user equipment in implementing the method described inthe fourth aspect.

In addition, for technical effects brought by the design manners of anyone of the foregoing aspects, refer to technical effects brought bydifferent design manners of the first aspect and the fourth aspect.Details are not described herein again.

In this application, names of the application deployment server, theuser equipment, and the communication apparatus constitute no limitationon the devices. During actual implementation, these devices may haveother names. Provided that functions of the devices are similar to thoseof this application, the devices fall within the scope of the claims ofthis application and equivalent technologies thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an example of an architecture of an NFV system according to anembodiment of this application;

FIG. 2 is a flowchart of a VNF deployment method according to thisapplication;

FIG. 3 is a flowchart of another VNF deployment method according to thisapplication;

FIG. 4 is a schematic composition diagram of a communication apparatusaccording to this application; and

FIG. 5 is a schematic composition diagram of another communicationapparatus according to this application.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

In this specification, claims, and accompanying drawings of thisapplication, the terms “first”, “second”, “third”, and the like areintended to distinguish between different objects but do not limit aparticular order.

In embodiments of this application, the word “example” or “for example”is used to represent giving an example, an illustration, or adescription. Any embodiment or design scheme described as an “example”or “for example” in the embodiments of this application shall not beexplained as being more preferred or having more advantages than anotherembodiment or design scheme. Exactly, use of the term such as “example”or “for example” is intended to present a related concept in a specificmanner.

For clear and concise description of the following embodiments, briefdescriptions of related technologies are first provided.

A conventional telecommunication system includes various dedicatedhardware devices, and different hardware devices are used for differentfunctions. As a network scale grows, the telecommunication systembecomes more complex, which brings a plurality of challenges, forexample, development and rollout of a new service, operation andmaintenance of the system, and resource utilization. To address thesechallenges and use a virtualization technology and a cloud computingtechnology in the internet technology (information technology, IT)industry, at the Software Defined Network and OpenFlow World Congress(SDN and OF world congress) on Oct. 22, 2012, 13 major telecom operatorsaround the world jointly released a network function virtualization(NFV) white paper, and announced establishment of an NFV industryspecific group (ISG) in the European Telecommunications StandardsInstitute (ETSI) to formulate a requirement and a technical framework ofNFV, and promote NFV development.

In an NFV technology, the virtualization technology is used to performresource pooling and virtualization on infrastructure hardware devices(such as a computing device, a storage device, and a network device), toprovide a virtual resource for an upper-layer application, and decouplesoftware from hardware. When a new service is developed, a hardwaredevice does not need to be deployed independently. Instead, thevirtualization technology needs to be used to virtualize the serviceinto an independent application (for example, a VNF). This greatlyshortens rollout time of the new service and greatly increases a virtualresource provisioning speed.

In the NFV technology, the cloud computing technology is used to scalean application, and match a virtual resource with service load. Thisimproves utilization efficiency of the virtual resource, and alsoimproves a response speed of an NFV system.

FIG. 1 is an example of an architecture of an NFV system according to anembodiment of this application. The NFV system can be used in variousnetworks, for example, implemented in a data center network, a telecomoperator network, or a local area network. The NFV system includes anNFV management and orchestration (NFV MANO) system 101, an NFVinfrastructure (NFVI) layer 102, a plurality of virtual networkfunctions (VNFs) 103, a plurality of element management (EM) systems104, and an operation-support system/business support system (OSS/BSS)105.

The NFV MANO 101 is configured to monitor and manage the NFVI 102 andthe VNF 103. The NFV management and orchestration system 101 includes anNFV orchestrator (NFVO) ion, one or more VNF managers (VNFMs) 1012, anda virtualized infrastructure manager (VIM) 1013.

The NFVO 1011 is mainly responsible for processing life cycle managementon a virtualization service, allocating and scheduling virtual resourcesin a virtual infrastructure and the NFVI, and the like. The NFVO 1011may also execute a resource-related request (for example, a VNFDobtaining request) from the one or more VNFMs 1012, and sendconfiguration information (such as a VNFD, a Modify VNF Informationoperation, and a VNF instantiation request) to the VNFMs 1012, andcollect status information of the VNF 103. The VNFD may be stored on theNFVO, or may be stored in a database managed by the NFVO, so that theNFVO may obtain the VNFD and feed back the VNFD to the VNFM, and theVNFM deploys a VNF based on the VNFD. The NFVO may store VNFDs of aplurality of VNFs with different functions. In addition, the NFVO 1011may communicate with the VIM 1013, to allocate and/or reserve aresource, and exchange configuration and status information of avirtualized hardware resource.

The VNFM 1012 is mainly responsible for life cycle management on the oneor more VNFs 103, for example, instantiating, updating, querying,scaling, and terminating the VNFs 103. The VNFM 1012 may communicatewith the VNFs 103 to complete life cycle management on the VNFs 103 andexchange configuration and status information. A plurality of VNFMs 1012may exist in the NFV system, and are responsible for performing lifecycle management on VNFs of different types.

The VIM 1013 may perform resource management functions, such as afunction of managing infrastructure resource allocation (for example,adding a resource to a virtual container) and an operation (for example,collecting NFVI fault information). The VNFM 1012 and the VIM 1013 maycommunicate with each other to allocate the resource and exchange theconfiguration and status information of the virtualized hardwareresource, for example, control and manage interaction between the VNF103 and computing hardware 1021, storage hardware 1022, network hardware1023, virtual computing (virtual computing) 1024, virtual storage 1025,and a virtual network 1026.

The NFVI 102 includes a hardware resource layer, a virtualization layer,and a virtual resource layer. The NFVI 102 includes a hardware resource,a software resource, or a combination of the hardware resource and thesoftware resource, to complete deployment of a virtualized environment.In other words, the hardware resource and the virtualization layer areused to provide a virtual resource for the VNF 103, for example, thevirtual resource is used as a virtual machine or a virtual container inanother form. The hardware resource layer includes the computinghardware 1021, the storage hardware 1022, and the network hardware 1023.The computing hardware 1021 may be existing hardware in the marketand/or customized hardware, and is configured to provide processing andcomputing resources. The storage hardware 1022 may be a storage capacityprovided in a network or a storage capacity of the storage hardware 1022(a local memory in a server). In an implementation solution, resourcesof the computing hardware 1021 and the storage hardware 1022 may beaggregated. The network hardware 1023 may be a switch, a router, and/orany other network device that is configured to provide a switchingfunction. The network hardware 1023 may cross a plurality of domains,and may include a plurality of networks interconnected by using one ormore transport networks. The virtualization layer in the NFVI 102 mayabstract a hardware resource from a physical layer and decouple from theVNF 103, to provide a virtual resource to the VNF 103. The virtualresource layer includes the virtual computing 1024, the virtual storage1025, and the virtual network 1026. The virtual computing 1024 and thevirtual storage 1025 may be provided to the VNF 103 in a form of avirtual machine and/or another virtual container. For example, the oneor more VNFs 103 may be deployed on one virtual machine (VM). Thevirtualization layer abstracts the network hardware 1023 to form thevirtual network 1026. The virtual network 1026 may include a virtualswitch (virtual switch), and the virtual switch is configured to providea connection between the virtual machine and another virtual machine. Inaddition, the transport network in the network hardware 1023 may bevirtualized by using a centralized control plane and an independentforwarding plane (for example, a software defined network).

In terms of hardware, the computing hardware 1021, the storage hardware1022, and the network hardware 1023 may include a plurality of subracks,a plurality of racks, or even a plurality of equipment rooms. In termsof software, there may be one VIM 1013 or a plurality of VIMs thatseparately manage different hardware resources.

The VNF 103 may be configured as virtualization of at least one virtualnetwork function performed by one physical network device.

The device management system (EM) 104 is a system configured toconfigure and manage a device in a conventional network. In the NFVsystem, the EM 104 may also be configured to configure and manage theVNF 103, and initiate a life cycle management operation such asinstantiation of a new VNF 103 to the VNFM 1012.

The operations support system and business support system (OSS/BSS) 105supports various end-to-end telecommunication services. Managementfunctions supported by the OSS include network configuration, serviceprovision, fault management, and the like. The BSS processes an order,payment, income, or the like, and supports product management, ordermanagement, revenue management, and customer management.

In the NFV system, a virtualized network service (NS) may be a networkservice of an IP multimedia subsystem (IMS), a network service of anext-generation mobile core network (Evolved Packet Core, EPC), or thelike. One NS may include several VNFs. When virtualization deployment isperformed on one NS, a virtualization service provider needs to obtaindescription information of the service, namely, a network servicedescriptor (NSD), from a virtualization service requestor. The NSDmainly describes topology structure information of the service anddescription information of each included VNF, namely, a VNF descriptor(VNFD). In the topology structure information, a virtual link descriptor(VLD) may be used to describe a connection between the VNFs. The VNFDincludes information such as a virtual deployment unit (VirtualisationDeployment Unit, VDU), a connection point (CP), and a virtual link (VL).The VDU can represent a virtual machine on which application software isinstalled. Descriptions of the VDU contain requirements on all virtualresources of the virtual machine. The CP represents connectioninformation on the virtual machine, for example, may be virtual networkinterface card information. Address information of the CP may berepresented by using an IP address or a media access control (MAC)address. The VL is a virtual connection that connects a plurality ofVDUs in the VNFs, and may be represented by using information such as aconnection type or bandwidth.

In this application, a topology and orchestration specification forcloud applications (TOSCA) may be used to describe the VNFD. The TOSCAis a description specification developed by the Advancing Open Standardsfor the Information Society (OASIS).

In some embodiments, information required for deploying an applicationmay be described in an application deployment package. The applicationdeployment package includes at least one application deploymentdescription file whose suffix is ste. The application deploymentdescription file with *.ste may describe deployment information of anapplication by using an extensible markup language (XML) language. Aroot element of the application deployment description file with *.steis a service template. That is, in the embodiments of this application,the service template may be used to completely describe informationabout an application that needs to be deployed. Sub-elements of theapplication deployment description file with *.ste include a topologytemplate (TopologyTemplate), a node type (NodeType), a node template(NodeTemplate), a relationship type (RelationshipType), a relationshiptemplate (RelationshipTemplate), a boundary definition(BoundaryDefinitions), and the like.

For example, an example of a topology template in a VNFD defined in aconventional technology is as follows:

tosca_definitions_version: tosca_simple_yaml_1_0 description: vCPE_vgwimports: - onap_dm.yaml topology_template: inputs: # Input parameter,where a value is input as required during deployment vcpe_image_name:type: string description: image name for vcpe in openstack glancedefault: ubuntu_16.04 public_net_id: type: string description: publicnetwork id used during onap installation vgw_name_0: type: stringdescription: Name of the vGW default: zdcpe1cpe01gw01

It can be learned from the VNFD that a vCPE service deployment templateis defined. In the topology template, input parameters (such as“vcpe_image_name”, “public_net_id”, and “vgw_name_o”) defined in“inputs” are dynamic parameters. Values of these input parameters can bedetermined only during deployment, for example, may be carried in a VNFinstantiation request.

Because requirements of VNFs are different, input parameters included inVNFDs corresponding to different VNFs are also different. To facilitateadaptation of all input parameters of different VNFs into the VNFinstantiation request, an NFV standard of the ETSI specifies that allservice-related dedicated parameters in the input parameters are definedas a modifiable attributes parameter (“modifiable_attributes”). It maybe understood that the dedicated parameter is a service-relatedparameter. For different services, dedicated parameters may becompletely different or may be partially different. Therefore, theinputs parameters include a common parameter and a modifiable attributeparameter that are related to all VNFs.

For example, an example of a topology template in a VNFD defined in aconventional technology is as follows:

topology_template: inputs: # Input parameter, where a value is input asrequired during deployment flavour: # Common parameter type: stringinstantiation_level: # Common parameter type: stringmodifiable_attributes: # Modifiable attributes parameter type:mycompany.datatypes.nfv.VnfInfoModifiableAttributes

It can be learned from the defined topology template that “flavour” and“instantiation_level” are common parameters. Values of the commonparameters may be carried in the VNF instantiation request, and arenotified to the virtualization service provider by the virtualizationservice requestor. In this way, the VNF instantiation request needs tocarry only the values of the common parameters and the modifiableattributes parameter. Because requirements of VNFs are different, themodifiable attributes parameter may be extended based on requirements ofdifferent VNFs. The modifiable attributes parameter includesservice-related dedicated parameters, such as “vcpe_image_name”,“public_net_id”, and “vgw_name_o” in the foregoing example. A Modify VNFInformation operation may be used to assign a value to or modify a valueof the dedicated parameter, and is notified to the virtualizationservice provider by the virtualization service requestor.

Although the virtualization service provider may learn of the value ofthe modifiable attributes parameter by using the Modify VNF Informationoperation, a conventional technology does not include a solution forassigning a value to a modifiable attributes parameter in the VNFD byusing the value of the modifiable attributes parameter included in theModify VNF Information operation. Therefore, the virtualization serviceprovider can assign a value to only a common parameter in the VNFD byusing the value of the common parameter included in the VNFinstantiation request, but cannot assign a value to the modifiableattributes parameter in the VNFD. As a result, VNF deployment fails.

An embodiment of this application provides a VNF deployment method. Themethod includes separately setting indication information of a commonparameter and dedicated parameter in a VNFD, to indicate a source of avalue of the common parameter and a source of a value of the dedicatedparameter, where the common parameter and the dedicated parameter areincluded in input parameters. When assigning values to the commonparameter and the dedicated parameter, a virtualization service providerobtains the value of the common parameter based on the indicationinformation of the common parameter, and obtains the value of thededicated parameter based on the indication information of the dedicatedparameter. Therefore, the virtualization service provider can assignvalues to the common parameter and a modifiable attributes parameter inthe VNFD, so that values are assigned to all input parameters in theVNFD, and the VNF is successfully deployed.

In this application, a virtualization service requestor may be userequipment. For example, the virtualization service requestor may be anNFVO or an OSS/a BSS. The virtualization service provider may be anapplication deployment server. For example, the virtualization serviceprovider may be a VNFM.

An example in which the virtualization service requestor is the NFVO andthe virtualization service provider is the VNFM is used below todescribe an implementation of the embodiments of this application indetail with reference to the accompanying drawings.

FIG. 2 is a flowchart of a VNF deployment method according to anembodiment of this application. As shown in FIG. 2 , the method mayinclude the following steps.

S201: An NFVO sends a Create VNF Identifier operation to a VNFM.

The Create VNF Identifier operation is used to request to create aninstance identifier for a VNF that needs to be deployed.

S202: The VNFM receives the Create VNF Identifier operation sent by theNFVO.

After receiving the Create VNF Identifier operation sent by the NFVO,the VNFM may send a receiving response to the NFVO, to notify the NFVOthat the Create VNF Identifier operation has been successfully received.In addition, the VNFM performs S203 and S204.

S203: The VNFM creates an instance identifier of a first VNF.

After receiving the Create VNF Identifier operation sent by the NFVO,the VNFM creates the instance identifier of the first VNF. The CreateVNF Identifier operation includes an identifier of a VNFD of the firstVNF. The VNFM may further establish a correspondence between theinstance identifier of the first VNF and the identifier of the VNFD ofthe first VNF.

S204: The VNFM creates VNF information storage space.

The VNF information storage space is used to store information relatedto VNF deployment. The information related to the VNF deployment mayinclude input parameters (for example, a common parameter and amodifiable attributes parameter) of the VNF, a VLD, a VDU, a CP, a VL,and the like. In this application, VNF information storage spacecorresponding to the instance identifier of the first VNF may becreated, and is used to store information related to deployment of thefirst VNF.

S205: The VNFM sends the instance identifier of the first VNF to theNFVO.

It should be noted that a sequence of the steps in the VNF deploymentmethod provided in this embodiment of this application may be properlyadjusted, or a step may be correspondingly added or deleted based on asituation. For example, a sequence of S204 and S205 may be changed. Thatis, S205 may be first performed, and S204 is then performed. Any methodthat can be easily figured out by a person skilled in the art within thetechnical scope disclosed in this application shall fall within theprotection scope of this application. Therefore, details are notdescribed again.

S206: The NFVO receives the instance identifier of the first VNF sent bythe VNFM.

After receiving the instance identifier of the first VNF sent by theVNFM, the NFVO stores the instance identifier of the first VNF, and maysend a receiving response to the VNFM, to notify the VNFM that theinstance identifier of the first VNF has been successfully received.

S207: The NFVO sends a Modify VNF Information operation to the VNFM.

The Modify VNF Information operation includes a modifiable attributesparameter. The modifiable attributes parameter includes N dedicatedparameters and a value of each dedicated parameter, the N dedicatedparameters and the value of each dedicated parameter are parametersrequired for instantiating the first VNF, N is an integer, and N≥1.

For example, a description example of the modifiable attributesparameter provided in this application is as follows:

modifiable_attribute: vcpe_image_name = image123 public_net_id = 123456vgw_name_0 = vgw123

The modifiable attributes parameter includes three dedicated parametersand a value of each dedicated parameter. The three dedicated parametersare “vcpe_image_name”, “public_net_id”, and “vgw_name_o”. The value of“vcpe_image_name” is “image123”. The value of “public_net_id” is“123456”. The value of “vgw_name_o” is “vgw123”.

The Modify VNF Information operation further includes the instanceidentifier of the first VNF, so that the VNFM stores, based on theinstance identifier of the first VNF, the N dedicated parameters and thevalue of each dedicated parameter into the VNF information storage spacecorresponding to the instance identifier of the first VNF. The instanceidentifier of the first VNF is notified by the VNFM to the NFVO inadvance.

S208: The VNFM receives the Modify VNF Information operation sent by theNFVO.

After receiving the Modify VNF Information operation sent by the NFVO,the VNFM may store the N dedicated parameters and the value of eachdedicated parameter that are included in the modifiable attributesparameter into the VNF information storage space corresponding to theinstance identifier of the first VNF. In addition, the VNFM may send areceiving response to the NFVO, to notify the NFVO that the Modify VNFInformation operation has been successfully received.

S209: The VNFM obtains the VNFD of the first VNF.

In some embodiments, the VNFM may send a VNFD obtaining request to theNFVO. The VNFD obtaining request includes the identifier of the VNFD ofthe first VNF. The identifier of the VNFD of the first VNF is notifiedby the NFVO to the VNFM in advance. The NFVO stores VNFDs of VNFs ofdifferent functions. After receiving the VNFD obtaining request, theNFVO may obtain the VNFD of the first VNF based on the identifier of theVNFD of the first VNF, and send a VNFD response to the VNFM. The VNFDresponse includes the VNFD of the first VNF. After obtaining the VNFD ofthe first VNF, the VNFM sends a receiving response to the NFVO, tonotify the NFVO that the VNFD of the first VNF has been successfullyreceived.

Specifically, the VNFD of the first VNF includes M common parameters,the modifiable attributes parameter, M first assignment indications, andone second assignment indication. One of the first assignmentindications is used to indicate to obtain a value of one commonparameter from a virtualization service requestor. The M firstassignment indications indicate sources of the values of the M commonparameters. The second assignment indication is used to indicate toobtain a value of the modifiable attributes parameter from avirtualization service provider. M is an integer, and Mi.

For example, an example of a topology template in the VNFD of the firstVNF provided in this application is as follows:

topology_template: inputs: # Input parameter, where a value is input asrequired during deployment flavour: type: string source: user # Firstassignment indication instantiation_level: type: string source: user #First assignment indication modifiable_attributes: type:mycompany.datatypes.nfv.VnfInfoModifiableAttributes source: VNFM #Second assignment indication

It can be learned from the topology template in the VNFD that a “source”field is added under the modifiable attributes parameter and each commonparameter, to indicate sources of values of the input parameters.

For example, the first assignment indication may be “source: user”.“source: user” in the common parameter “flavour” is used to indicate toobtain a value of “flavour” from the virtualization service requestor(for example, the user (user)). “source: user” in the common parameter“instantiation_level” is used to indicate to obtain a value of“instantiation_level” from the virtualization service requestor (forexample, the user (user)). The user may be an OSS or a BSS. In somedesigns, the virtualization service requestor sends a VNF instantiationrequest to the virtualization service provider. The VNF instantiationrequest carries the common parameters and the values of the commonparameters. In this embodiment, the VNFM may obtain the value of“flavour” from the VNF instantiation request and assign the value to“flavour”. The VNFM may obtain the value of “instantiation_level” fromthe VNF instantiation request and assign the value to“instantiation_level”.

For another example, the virtualization service requestor mayalternatively be an NFVO. The first assignment indication may be“source: NFVO”.

For example, an example of another topology template in the VNFD of thefirst VNF provided in this application is as follows:

topology_template: inputs: # Input parameter, where a value is input asrequired during deployment flavour: type: string source: user # Firstassignment indication instantiation_level: type: string source: user #First assignment indication vimConnectionInfo: type: string description:VNF instantiation level source: NFVO # First assignment indicationmodifiable_attributes: type:mycompany.datatypes.nfv.VnfInfoModifiableAttributes source: VNFM #Second assignment indication

“source: NFVO” in the common parameter “vimConnectionInfo” is used toindicate to obtain a value of “vimConnectionInfo” from thevirtualization service requestor (the NFVO). In this embodiment, theVNFM may obtain the value of “vimConnectionInfo” from the VNFinstantiation request and assign the value to “vimConnectionInfo”.

The second assignment indication may be “source: VNFM”. “source: VNFM”in the modifiable attributes parameter is used to indicate to obtain avalue of the modifiable attributes parameter from the virtualizationservice provider (for example, the VNFM). The VNFM may obtain the valueof the modifiable attributes parameter from the Modify VNF Informationoperation, and assign the value to the modifiable attributes parameter.

It should be noted that the first assignment indications and the secondassignment indication may be set during VNFD design. After receiving theVNFD, the NFVO and the VNFM may determine, based on the first assignmentindications and the second assignment indication, whether values need tobe assigned to corresponding parameters.

In addition, the VNFD of the first VNF may further include otherinformation related to the deployment of the first VNF, such as a VDU, aCP, and a VL. For specific explanations, refer to an existingtechnology. This is not limited in this application.

S210: The VNFM assigns the N dedicated parameters and the value of eachdedicated parameter to the modifiable attributes parameter in the VNFDbased on the second assignment indication, to obtain a first updatedVNFD.

After obtaining the VNFD of the first VNF, the VNFM parses the VNFD ofthe first VNF, and determines, based on a first assignment indication,that the source of the value of the common parameter in the VNFD of thefirst VNF is the NFVO or the OSS/BSS. In this case, the VNFM has notobtained the value of the common parameter. Therefore, the value cannotbe assigned to the common parameter, and the VNFD of the first VNF doesnot need to be updated. Further, the VNFM determines, based on thesecond assignment indication, that the source of the value of themodifiable attributes parameter in the VNFD of the first VNF is theVNFM. Because the VNFM prestores the N dedicated parameters and thevalue of each dedicated parameter that are included in the modifiableattributes parameter, the VNFM obtains the N dedicated parameters andthe value of each dedicated parameter from the VNF information storagespace corresponding to the instance identifier of the first VNF, andassigns the N dedicated parameters and the value of each dedicatedparameter to the modifiable attributes parameter in the VNFD of thefirst VNF, to obtain the first updated VNFD.

For example, it is assumed that the modifiable attributes parameterstored in the VNF information storage space corresponding to theinstance identifier of the first VNF includes the following dedicatedparameters and values of the dedicated parameters, including“vcpe_image_name”, “public_net_id”, “vgw_name_o”, the value “image123”of “vcpe_image_name”, the value “123456” of “public_net_id”, and thevalue “vgw123” of “vgw_name_o”. The VNFM assigns “vcpe_image_name”,“public_net_id”, “vgw_name_o”, the value “image123” of“vcpe_image_name”, the value “123456” of “public_net_id”, and the value“vgw123” of “vgw_name_o” to the modifiable attributes parameter in theVNFD of the first VNF based on the second assignment indication, toobtain the first updated VNFD. The modifiable attributes parameterstored in the VNF information storage space corresponding to theinstance identifier of the first VNF is as follows:

modifiable_attribute: vcpe_image_name = image123 public_net_id = 123456vgw_name_0 = vgw123

The first updated VNFD is as follows:

topology_template: inputs: # Input parameter, where a value is input asrequired during deployment flavour: type: string source: user # Firstassignment indication instantiation_level: type: string source: user #First assignment indication modifiable_attributes: vcpe_image_name =image123 public_net_id = 123456 vgw_name_0 = vgw123

It should be noted that the VNFM may determine whether values areassigned to all input parameters in the first updated VNFD. If thevalues are not assigned to all the input parameters in the first updatedVNFD, the VNFM first stores the first updated VNFD. Optionally, in thisapplication, the VNFM may alternatively convert a VNFD file, obtainedafter the value is assigned to the modifiable attributes parameter, intoany other file suitable for machine processing, for example, with aformat such as JSON or XML, and save the file. This is not limited inthis application.

S211: The NFVO sends the VNF instantiation request to the VNFM.

The VNF instantiation request includes the instance identifier of thefirst VNF, the M common parameters, and the value of each commonparameter. The instance identifier of the first VNF is notified by theVNFM to the NFVO in advance. The M common parameters and the value ofeach common parameter are parameters required for instantiating thefirst VNF.

For example, the VNF instantiation request includes two commonparameters and a value of each common parameter. The two commonparameters may be “flavour” and “instantiation_level”. The value of“flavour” is “flavour-1”. The value of “instantiation_level” is“level-1”.

In some embodiments, the value of the common parameter may be assignedby the OSS/BSS to the common parameter.

In some other embodiments, before the NFVO sends the VNF instantiationrequest to the VNFM, the NFVO may further assign a proper value to acommon parameter whose source in the VNFD is the NFVO, and include theproper value in the VNF instantiation request.

For example, if “source” of “vimConnectionInfo” in the input parametersis “NFVO”, the NFVO needs to assign a value to “vimConnectionInfo”. Forexample, the value assigned by the NFVO to “vimConnectionInfo” is“10.2.2.2”. In this case, content carried in the VNF instantiationrequest includes “flavour”, “instantiation_level”, “vimConnectionInfo”,the value “flavour-1” of “flavour”, the value “level-1” of“instantiation_level”, and the value “10.2.2.2” of “vimConnectionInfo”.

5212: The VNFM receives the VNF instantiation request sent by the NFVO.

After receiving the VNF instantiation request sent by the NFVO, the VNFMmay send a receiving response to the NFVO, to notify the NFVO that theModify VNF Information operation has been successfully received.

S213: The VNFM assigns the values of the M common parameters tocorresponding common parameters in the first updated VNFD based on thefirst assignment indications, to obtain a second updated VNFD.

The VNFM may first perform querying based on the instance identifier ofthe first VNF to determine the correspondence between the instanceidentifier of the first VNF and the identifier of the VNFD of the firstVNF, determine the identifier of the VNFD of the first VNF associatedwith the instance identifier of the first VNF, and determine the VNFD ofthe first VNF based on the identifier of the VNFD of the first VNF.Then, the VNFM determines, based on the first assignment indications,that the sources of the values of the common parameters in the VNFD ofthe first VNF are the user (OSS/BSS) or/and the NFVO. The VNFM assignsthe values of the M common parameters to the corresponding commonparameters in the VNFD of the first VNF, to obtain the second updatedVNFD.

For example, the content carried in the VNF instantiation requestincludes “flavour”, “instantiation_level”, the value “flavour-1” of“flavour”, and the value “level-1” of “instantiation_level”.

The value “flavour-1” is assigned to “flavour” in the VNFD of the firstVNF. The value “level-1” of “instantiation_level” is assigned to“instantiation_level” in the VNFD of the first VNF. A topology templatein the second updated VNFD is as follows:

topology_template: inputs: flavour: flavour-1 instantiation_level:level-1 modifiable_attribute: vcpe_image_name = image123 public_net_id =123456 vgw_name_0 = vgw123

For another example, the content carried in the VNF instantiationrequest includes “flavour”, “instantiation_level”, “vimConnectionInfo”,the value “flavour-1” of “flavour”, the value “level-1” of“instantiation_level”, and the value “10.2.2.2” of “vimConnectionInfo”.

“source” of “vimConnectionInfo” is “NFVO”. The NFVO needs to assign“10.2.2.2” to “vimConnectionInfo”. Therefore, the VNFM assigns the value“flavour-1” of “flavour” to “flavour” in the VNFD of the first VNF,assigns the value “level-1” of “instantiation_level” to“instantiation_level” in the VNFD of the first VNF, and assigns thevalue “10.2.2.2” of “vimConnectionInfo” to “vimConnectionInfo” in theVNFD of the first VNF. A topology template in the second updated VNFD isas follows:

topology_template: inputs: flavour: flavour-1 instantiation_level:level-1 vimConnectionInfo: 10.2.2.2 modifiable_attribute:vcpe_image_name = image123 public_net_id = 123456 vgw_name_0 = vgw123

In this case, values are assigned to all input parameters in the VNFD ofthe first VNF.

The VNFM may deploy the first VNF by parsing the VNFD file. The VNFMperforms S214.

S214: The VNFM deploys the first VNF based on the second updated VNFD.

The VNFM may determine whether values are assigned to all inputparameters in the second updated VNFD. If the values are assigned to allthe input parameters in the second updated VNFD, the VNFM deploys thefirst VNF based on the second updated VNFD.

It should be noted that when the first VNF is deployed, a get_inputfunction may be used to assign a value of an input parameter (“inputs”)to a specific parameter. An example is shown below:

VL_public: type: tosca.nodes.nfv.VnfVirtualLink properties:connectivity_type: layer_protocol: ipv4 vl_profile: networkName:{get_input: public_net_id}

A value of “networkName” is equal to a value of the input parameter“public_net_id”. The VNF instantiation request carries the value of theparameter “public_net_id”.

Another example is shown below:

LLU_VNF: type: tosca.nodes.nfv.VNF properties: flavour_id: {get_input:flavour} descriptor_id: b1bb0ce7-2222-4fa7-95ed-4840d70a1177modifiable_attributes: {get_input: modifiable_attributes}

A value of “flavour_id” is equal to the value of the input parameter“flavour”. The VNF instantiation request carries the value of theparameter “flavour”. A value of “modifiable attributes” is equal to thevalue of the input parameter “modifiable_attributes”. The Modify VNFInformation operation carries the value of the parameter“modifiable_attributes”.

For other steps related to the VNF deployment, refer to descriptions inthe existing technology. Details are not described in this application.

According to the VNF deployment method provided in this embodiment ofthis application, the virtualization service provider can obtain thevalue of the modifiable attributes parameter from the VNF informationstorage space, and assign the value to the modifiable attributesparameter in the VNFD, so that values are assigned to all inputparameters in the VNFD, and the VNF is successfully deployed.

In some other embodiments, the VNFM may alternatively obtain a VNFDafter receiving a VNF instantiation request, to avoid storing a VNFDobtained after a value is assigned to only a modifiable attributesparameter. Therefore, storage resource overheads are reduced.

FIG. 3 is a flowchart of a VNF deployment method according to anembodiment of this application. As shown in FIG. 3 , the method mayinclude the following steps.

S301: An NFVO sends a Create VNF Identifier operation to a VNFM.

S302: The VNFM receives the Create VNF Identifier operation sent by theNFVO.

S303: The VNFM creates an instance identifier of a first VNF.

S304: The VNFM creates VNF information storage space.

S305: The VNFM sends the instance identifier of the first VNF to theNFVO.

S306: The NFVO receives the instance identifier of the first VNF sent bythe VNFM.

S307: The NFVO sends a Modify VNF Information operation to the VNFM.

S308: The VNFM receives the Modify VNF Information operation sent by theNFVO.

For explanations of S301 to S308, refer to the descriptions of S201 toS208. Details are not described again.

S309: The NFVO sends a VNF instantiation request to the VNFM.

The VNF instantiation request includes the instance identifier of thefirst VNF, M common parameters, and a value of each common parameter.The instance identifier of the first VNF is notified by the VNFM to theNFVO in advance. The M common parameters and the value of each commonparameter are parameters required for instantiating the first VNF.

For example, the VNF instantiation request includes two commonparameters and a value of each common parameter. The two commonparameters are “flavour” and “instantiation_level”. The value of“flavour” is “flavour-1”. The value of “instantiation_level” is“level-1”.

In some embodiments, the value of the common parameter may be assignedby an OSS/a BSS to the common parameter.

In some other embodiments, before the NFVO sends the VNF instantiationrequest to the VNFM, the NFVO may further assign a proper value to acommon parameter whose source in a VNFD is the NFVO, and include theproper value in the VNF instantiation request.

For example, if “source” of “vimConnectionInfo” in input parameters is“NFVO”, the NFVO needs to assign a value to “vimConnectionInfo”. Forexample, the value assigned by the NFVO to “vimConnectionInfo” is“10.2.2.2”. In this case, content carried in the VNF instantiationrequest includes “flavour”, “instantiation_level”, “vimConnectionInfo”,the value “flavour-1” of “flavour”, the value “level-1” of“instantiation_level”, and the value “10.2.2.2” of “vimConnectionInfo”.

S310: The VNFM receives the VNF instantiation request sent by the NFVO.

After receiving the VNF instantiation request sent by the NFVO, the VNFMmay send a receiving response to the NFVO, to notify the NFVO that theModify VNF Information operation has been successfully received.

S311: The VNFM obtains a VNFD of the first VNF.

In some embodiments, the VNFM may send a VNFD obtaining request to theNFVO. The VNFD obtaining request includes an identifier of the VNFD ofthe first VNF. The identifier of the VNFD of the first VNF is notifiedby the NFVO to the VNFM in advance. After receiving the VNFD obtainingrequest, the NFVO obtains the VNFD of the first VNF based on theidentifier of the VNFD of the first VNF, and sends a VNFD response tothe VNFM. The VNFD response includes the VNFD of the first VNF. Afterobtaining the VNFD of the first VNF, the VNFM sends a receiving responseto the NFVO, to notify the NFVO that the VNFD of the first VNF has beensuccessfully received.

Specifically, the VNFD of the first VNF includes the M commonparameters, a modifiable attributes parameter, M first assignmentindications, and a second assignment indication. One of the firstassignment indications is used to indicate to obtain a value of onecommon parameter from a virtualization service requestor. The M firstassignment indications indicate sources of values of the M commonparameters. The second assignment indication is used to indicate toobtain a value of the modifiable attributes parameter from avirtualization service provider. M is an integer, and Mi.

For example, an example of a topology template in the VNFD of the firstVNF provided in this application is as follows:

topology_template: inputs: # Input parameter, where a value is input asrequired during deployment flavour: type: string source: user # Firstassignment indication instantiation_level: type: string source: user #First assignment indication  modifiable_attributes: type:mycompany.datatypes.nfv.VnfInfoModifiableAttributes source: VNFM #Second assignment indication

It can be learned from the topology template in the VNFD that a “source”field is added under the modifiable attributes parameter and each commonparameter, to indicate sources of values of the input parameters.

For example, the first assignment indication may be “source: user”.“source: user” in the common parameter “flavour” is used to indicate toobtain the value of “flavour” from the virtualization service requestor(for example, the user (user)). “source: user” in the common parameter“instantiation_level” is used to indicate to obtain the value of“instantiation_level” from the virtualization service requestor (forexample, the user (user)). The user may be the OSS or the BSS. In somedesigns, the virtualization service requestor sends the VNFinstantiation request to the virtualization service provider. The VNFinstantiation request carries the common parameters and the values ofthe common parameters. In this embodiment, the VNFM may obtain the valueof “flavour” from the VNF instantiation request and assign the value to“flavour”. The VNFM may obtain the value of “instantiation_level” fromthe VNF instantiation request and assign the value to“instantiation_level”.

For another example, the virtualization service requestor mayalternatively be the NFVO. The first assignment indication may be“source: NFVO”.

For example, an example of another topology template in the VNFD of thefirst VNF provided in this application is as follows:

topology_template: inputs: # Input parameter, where a value is input asrequired during deployment flavour: type: string source: user # Firstassignment indication instantiation_level: type: string source: user #First assignment indication vimConnectionInfo: type: string description:VNF instantiation level source: NFVO # First assignment indicationmodifiable_attributes: type:mycompany.datatypes.nfv.VnfInfoModifiableAttributes source: VNFM #Second assignment indication

“source: NFVO” in the common parameter “vimConnectionInfo” is used toindicate to obtain the value of “vimConnectionInfo” from thevirtualization service requestor (NFVO). In this embodiment, the VNFMmay obtain the value of “vimConnectionInfo” from the VNF instantiationrequest and assign the value to “vimConnectionInfo”.

The second assignment indication may be “source: VNFM”. “source: VNFM”in the modifiable attributes parameter is used to indicate to obtain thevalue of the modifiable attributes parameter from the virtualizationservice provider (for example, the VNFM). The VNFM may obtain the valueof the modifiable attributes parameter from the Modify VNF Informationoperation, and assign the value to the modifiable attributes parameter.

It should be noted that the first assignment indications and the secondassignment indication may be set during VNFD design. After receiving theVNFD, the NFVO and the VNFM may determine, based on the first assignmentindications and the second assignment indication, whether values need tobe assigned to corresponding parameters.

In addition, the VNFD of the first VNF may further include otherinformation related to deployment of the first VNF, such as a VDU, a CP,and a VL. For specific explanations, refer to an existing technology.This is not limited in this application.

S312: The VNFM assigns the values of the M common parameters tocorresponding common parameters in a first updated VNFD based on thefirst assignment indications, and assigns the N dedicated parameters andthe value of each dedicated parameter to the modifiable attributesparameter in the VNFD based on the second assignment indication, toobtain the first updated VNFD.

The VNFM parses the VNFD of the first VNF, and determines, based on thefirst assignment indications, that sources of the values of the commonparameters in the VNFD of the first VNF are the user (OSS/BSS) or/andthe NFVO. The VNFM assigns the values of the M common parameters to thecorresponding common parameters in the VNFD of the first VNF. The VNFMdetermines, based on the second assignment indication, that a source ofthe value of the modifiable attributes parameter in the VNFD of thefirst VNF is the VNFM. Because the VNFM prestores the N dedicatedparameters and the value of each dedicated parameter that are includedin the modifiable attributes parameter, the VNFM obtains the N dedicatedparameters and the value of each dedicated parameter from the VNFinformation storage space corresponding to the instance identifier ofthe first VNF, and assigns the N dedicated parameters and the value ofeach dedicated parameter to the modifiable attributes parameter in theVNFD of the first VNF, to obtain the first updated VNFD.

For example, the content carried in the VNF instantiation requestincludes “flavour”, “instantiation_level”, the value “flavour-1” of“flavour”, and the value “level-1” of “instantiation_level”. The VNFMassigns the value “flavour-1” of “flavour” to “flavour” in the VNFD ofthe first VNF, and assigns the value “level-1” of “instantiation_level”to “instantiation_level” in the VNFD of the first VNF.

Further, it is assumed that the modifiable attributes parameter storedin the VNF information storage space corresponding to the instanceidentifier of the first VNF includes the following dedicated parametersand values of the dedicated parameters, including “vcpe_image_name”,“public_net_id”, “vgw_name_o”, a value “imagei23” of “vcpe_image_name”,a value “123456” of “public_net_id”, and a value “vgw123” of“vgw_name_o”. The VNFM assigns “vcpe_image_name”, “public_net_id”,“vgw_name_o”, the value “image123” of “vcpe_image_name”, the value“123456” of “public_net_id”, and the value “vgw123” of “vgw_name_o” tothe modifiable attributes parameter in the VNFD of the first VNF basedon the second assignment indication, to obtain the first updated VNFD.The modifiable attributes parameter stored in the VNF informationstorage space corresponding to the instance identifier of the first VNFis as follows:

modifiable_attribute: vcpe_image_name = image123 public_net_id = 123456vgw_name_0 = vgw123

The first updated VNFD is as follows:

topology_template: inputs: flavour: flavour-1 instantiation_level:level-1 modifiable_attribute: vcpe_image_name = image123 public_net_id =123456 vgw_name_0 = vgw123

In some embodiments, the VNFD includes the parameter“vimConnectionInfo”. The content carried in the VNF instantiationrequest includes “vimConnectionInfo” and the value “10.2.2.2” of“vimConnectionInfo”. The VNFM further needs to assign the value“10.2.2.2” of “vimConnectionInfo” to “vimConnectionInfo” in the VNFD ofthe first VNF. “source” of “vimConnectionInfo” is “NFVO”, and the value“10.2.2.2” of “vimConnectionInfo” is assigned by the NFVO to“vimConnectionInfo”.

The first updated VNFD is as follows:

topology_template: inputs: flavour: flavour-1 instantiation_level:level-1 vimConnectionInfo: 10.2.2.2 modifiable_attribute:vcpe_image_name = image123 public_net_id = 123456 vgw_name_0 = vgw123

In this case, values are assigned to all input parameters in the VNFD ofthe first VNF. The VNFM may deploy the first VNF by parsing the VNFDfile. The VNFM performs S313. For other specific explanations of S312,refer to the explanations of S210 and S213. Details are not describedagain.

S313: The VNFM deploys the first VNF based on the first updated VNFD.

The VNFM may determine whether values are assigned to all inputparameters in the first updated VNFD. If the values are assigned to allthe input parameters in the first updated VNFD, the VNFM deploys thefirst VNF based on the first updated VNFD. For a specific explanation,refer to the explanations of S214. Details are not described again.

According to the VNF deployment method provided in this embodiment ofthis application, the virtualization service provider can obtain thevalue of the modifiable attributes parameter from the VNF informationstorage space, and assign the value to the modifiable attributesparameter in the VNFD, so that values are assigned to all inputparameters in the VNFD, and the VNF is successfully deployed.

In the foregoing embodiments provided in this application, the methodprovided in the embodiments of this application is separately describedfrom a perspective of interaction between nodes (the VNFM and the NFVO).It may be understood that, to implement functions in the method providedin the embodiments of this application, each network element, such asthe VNFM and the NFVO, includes a corresponding hardware structureand/or software module for performing the functions. A person skilled inthe art should easily be aware that, in combination with algorithm stepsof the examples described in the embodiments disclosed in thisspecification, this application can be implemented by using hardware ora combination of hardware and computer software. Whether a function isperformed by hardware or hardware driven by computer software depends onparticular applications and design constraints of the technicalsolutions. A person skilled in the art may use different methods toimplement the described functions for each particular application, butit should not be considered that the implementation goes beyond thescope of this application.

In the embodiments of this application, the VNFM and the NFVO may bedivided into function modules based on the foregoing method examples.For example, function modules may be obtained through division based oncorresponding functions, or two or more functions may be integrated intoone processing module. The integrated module may be implemented in aform of hardware, or may be implemented in a form of a software functionmodule. It should be noted that, in the embodiments of this application,division into the modules is an example, and is merely a logicalfunction division. During actual implementation, another division mannermay be used.

When various function modules are obtained through division based onvarious corresponding functions, FIG. 4 is a possible schematiccomposition diagram of the communication apparatus in the foregoingembodiments. The communication apparatus can perform a step performed bythe VNFM or the NFVO in any one of the method embodiments of thisapplication. The communication apparatus may include a receiving unit401, a processing unit 402, and a sending unit 403.

When the communication apparatus is a VNFM or a communication apparatusthat supports the VNFM in implementing the method provided in theembodiments, the communication apparatus may be, for example, a chipsystem.

The receiving unit 401 is configured to support the communicationapparatus in performing the method described in the embodiments of thisapplication. For example, the receiving unit 401 is configured toperform or support the communication apparatus in performing S202, S208,and 5212 in the method shown in FIG. 2 , and S302, S308, and S310 in themethod shown in FIG. 3 .

The processing unit 402 is configured to perform or support thecommunication apparatus in performing S203, S204, S210, S213, and S214in the method shown in FIG. 2 , and S303, S304, S312, and S313 in themethod shown in FIG. 3 .

The sending unit 403 is configured to perform or support thecommunication apparatus in performing S205 in the method shown in FIG. 2and S305 in the method shown in FIG. 3 .

When the communication apparatus is an NFVO or a communication apparatusthat supports the NFVO in implementing the method provided in theembodiments, the communication apparatus may be, for example, a chipsystem.

The receiving unit 401 is configured to support the communicationapparatus in performing the method described in the embodiments of thisapplication. For example, the receiving unit 401 is configured toperform or support the communication apparatus in performing S206 in themethod shown in FIG. 2 and S306 in the method shown in FIG. 3 .

The sending unit 403 is configured to perform or support thecommunication apparatus in performing S201, S207, and S211 in the methodshown in FIG. 2 , and S301, S307, and S309 in the method shown in FIG. 3.

It should be noted that all related content of the steps in theforegoing method embodiments may be cited in function descriptions ofcorresponding function modules. Details are not described herein again.

The communication apparatus provided in this embodiment of thisapplication is configured to perform the method in any one of theforegoing embodiments, and therefore can achieve same effects as themethod in the foregoing embodiments.

FIG. 5 shows a communication apparatus 500 according to an embodiment ofthis application. The communication apparatus 500 is configured toimplement a function of the VNFM in the foregoing methods. Thecommunication apparatus 500 may be a VNFM, or may be an apparatus in theVNFM. The communication apparatus 500 may be a chip system. In thisembodiment of this application, the chip system may include a chip, ormay include a chip and another discrete component. Alternatively, thecommunication apparatus 500 is configured to implement a function of theNFVO in the foregoing methods. The communication apparatus 500 may be anNFVO, or may be an apparatus in the NFVO. The communication apparatus500 may be a chip system. In this embodiment of this application, thechip system may include a chip, or may include a chip and anotherdiscrete component.

The communication apparatus 500 includes at least one processor 501,configured to implement a function of the VNFM or the NFVO in the methodprovided in the embodiments of this application. For example, theprocessor 501 may be configured to assign N dedicated parameters and avalue of each dedicated parameter to a modifiable attributes parameterin a VNFD based on a second assignment indication. For details, refer tothe detailed descriptions in the method examples. Details are notdescribed herein again.

The communication apparatus 500 may further include at least one memory502, configured to store program instructions and/or data. The memory502 is coupled to the processor 501. The coupling in this embodiment ofthis application is indirect coupling or a communication connectionbetween apparatuses, units, or modules for information exchange betweenthe apparatuses, the units, or the modules, and may be in electrical,mechanical, or other forms. The processor 501 may operate with thememory 502. The processor 501 may execute the program instructionsstored in the memory 502. At least one of the at least one memory may beincluded in the processor.

The communication apparatus 500 may further include a communicationinterface 503, configured to communicate with another device by using atransmission medium, so that an apparatus in the communication apparatus500 can communicate with the another device. For example, if thecommunication apparatus is a VNFM, the another device is an NFVO. If thecommunication apparatus is an NFVO, the another device is a VNFM. Theprocessor 501 receives and sends data through the communicationinterface 503, and is configured to implement the method performed bythe VNFM or the NFVO in the embodiments corresponding to FIG. 2 and FIG.3 .

A specific connection medium between the communication interface 503,the processor 501, and the memory 502 is not limited in this embodimentof this application. In this embodiment of this application, in FIG. 5 ,the communication interface 503, the processor 501, and the memory 502are connected through a bus 504. The bus is represented by using a boldline in FIG. 5 . A connection manner between other components is merelyan example for description, and constitutes no limitation. The bus maybe classified into an address bus, a data bus, a control bus, and thelike. For ease of representation, only one bold line is used torepresent the bus in FIG. 5 , but this does not mean that there is onlyone bus or only one type of bus.

In the embodiments of this application, the processor may be ageneral-purpose processor, a digital signal processor, anapplication-specific integrated circuit, a field programmable gate arrayor another programmable logic device, a discrete gate or transistorlogic device, or a discrete hardware component, and may implement orperform the methods, steps, and logical block diagrams disclosed in theembodiments of this application. The general-purpose processor may be amicroprocessor, any conventional processor, or the like. The steps ofthe methods disclosed with reference to the embodiments of thisapplication may be directly performed and completed by a hardwareprocessor, or may be performed and completed by using a combination ofhardware and software modules in the processor.

In the embodiments of this application, the memory may be a non-volatilememory such as a hard disk drive (HDD) or a solid-state drive (SSD), ormay be a volatile memory such as a random access memory (RAM). Thememory is any other medium that can carry or store expected program codein a form of an instruction structure or a data structure and that canbe accessed by a computer, but is not limited thereto. The memory in theembodiments of this application may alternatively be a circuit or anyother apparatus that can implement a storage function, and is configuredto store program instructions and/or data.

The foregoing descriptions of the implementations allow a person skilledin the art to clearly understand that, for the purpose of convenient andbrief description, division into only the foregoing function modules isused as an example for description. During actual application, theforegoing functions can be allocated to different function modules forimplementation as required. In other words, an inner structure of anapparatus is divided into different function modules to implement all orsome of the functions described above.

In the several embodiments provided in this application, it should beunderstood that the disclosed apparatuses and methods may be implementedin other manners. For example, the foregoing apparatus embodiments aremerely examples. For example, division into the modules or units ismerely logical function division. There may be another division mannerduring actual implementation. For example, a plurality of units orcomponents may be combined or integrated into another apparatus, or somefeatures may be ignored or not performed. In addition, the displayed ordiscussed mutual couplings or direct couplings or communicationconnections may be implemented through some interfaces. The indirectcouplings or communication connections between the apparatuses or unitsmay be implemented in electronic, mechanical, or other forms.

The units described as separate parts may or may not be physicallyseparate, and parts displayed as units may be one or more physicalunits, may be located in one place, or may be distributed on differentplaces. A part or all of the units may be selected based on actualrequirements to achieve the objectives of the solutions of theembodiments.

In addition, function units in the embodiments of this application maybe integrated into one processing unit, or each of the units may existalone physically, or two or more units are integrated into one unit. Theintegrated unit may be implemented in a form of hardware, or may beimplemented in a form of a software function unit.

All or some of the methods in the embodiments of this application may beimplemented by using software, hardware, firmware, or any combinationthereof. When software is used to implement the embodiments, all or someof the embodiments may be implemented in a form of a computer programproduct. The computer program product includes one or more computerinstructions. When the computer program instructions are loaded andexecuted on a computer, the procedures or functions according to theembodiments of the present invention are all or partially generated. Thecomputer may be a general-purpose computer, a special-purpose computer,a computer network, a network device, a terminal, or anotherprogrammable apparatus. The computer instructions may be stored in acomputer-readable storage medium, or may be transmitted from acomputer-readable storage medium to another computer-readable storagemedium. For example, the computer instructions may be transmitted from awebsite, computer, server, or data center to another website, computer,server, or data center in a wired (for example, a coaxial cable, anoptical fiber, or a digital subscriber line (DSL)) or wireless (forexample, infrared, radio, or microwave) manner. The computer-readablestorage medium may be any usable medium accessible by a computer, or adata storage device, such as a server or a data center, integrating oneor more usable media. The usable medium may be a magnetic medium (forexample, a floppy disk, a hard disk drive, or a magnetic tape), anoptical medium (for example, a digital video disc (DVD)), asemiconductor medium (for example, an SSD), or the like.

The foregoing descriptions are merely specific implementations of thisapplication, but are not intended to limit the protection scope of thisapplication. Any variation or replacement within the technical scopedisclosed in this application shall fall within the protection scope ofthis application. Therefore, the protection scope of this applicationshall be subject to the protection scope of the claims.

What is claimed is:
 1. A virtual network function (VNF) deploymentmethod, comprising: sending, by a network function virtualizationorchestrator (NFVO), a Modify VNF Information operation, wherein theModify VNF Information operation comprises a modifiable attributesparameter, wherein the modifiable attributes parameter comprises Ndedicated parameters and a value of each dedicated parameter of the Ndedicated parameters, wherein the N dedicated parameters and the valueof each dedicated parameter are parameters required for instantiating afirst VNF, wherein N is an integer, and wherein N≥1; receiving, by avirtualized network function manager (VNFM), the Modify VNF Informationoperation; sending, by the NFVO, a virtual network function descriptor(VNFD) of the first VNF, wherein the VNFD of the first VNF comprises Mcommon parameters, the modifiable attributes parameter, M firstassignment indications, and one second assignment indication, whereinone of the first assignment indications of the M first assignmentindications indicates to obtain a value of one of the common parametersfrom a virtualization service requestor, wherein the second assignmentindication indicates to obtain a value of the modifiable attributesparameter from a virtualization service provider, wherein M is aninteger, and wherein M≥1; obtaining, by the VNFM, the VNFD of the firstVNF; assigning, by the VNFM, the N dedicated parameters and the value ofeach dedicated parameter to the modifiable attributes parameter in theVNFD based on the second assignment indication, and obtaining, as aresult of assigning the N dedicated parameters, a first updated VNFD;sending, by the NFVO, a VNF instantiation request, wherein the VNFinstantiation request comprises the M common parameters and a value ofeach common parameter of the M common parameters, wherein the M commonparameters and the value of each common parameter are parametersrequired for instantiating the first VNF; receiving, by the VNFM, theVNF instantiation request; assigning, by the VNFM, the values of the Mcommon parameters to corresponding common parameters in the firstupdated VNFD based on the first assignment indications, and obtaining,as a result of the assigning the values of the M common parameters, asecond updated VNFD; and deploying, by the VNFM, the first VNF based onthe second updated VNFD.
 2. The method according to claim 1, wherein thevirtualization service requestor is at least one of a NFVO or anoperations support system/business support system (OSS/BSS), and whereinthe virtualization service provider is a VNFM.
 3. The method accordingto claim 2, further comprising performing, before the receiving a ModifyVNF Information operation: receiving, by the VNFM, a Create VNFIdentifier operation sent by the NFVO, wherein the Create VNF Identifieroperation comprises an identifier of the VNFD of the first VNF;creating, by the VNFM, an instance identifier of the first VNF;establishing a correspondence between the instance identifier of thefirst VNF and the identifier of the VNFD of the first VNF; and sending,by the VNFM, the instance identifier of the first VNF to the NFVO. 4.The method according to claim 3, wherein the obtaining the VNFD of thefirst VNF comprises: sending, by the VNFM, a VNFD obtaining request tothe NFVO, wherein the VNFD obtaining request comprises the identifier ofthe VNFD of the first VNF; and receiving, by the VNFM, a VNFD responsesent by the NFVO, wherein the VNFD response comprises the VNFD of thefirst VNF.
 5. The method according to claim 3, wherein the Modify VNFInformation operation further comprises the instance identifier of thefirst VNF, and wherein the VNF instantiation request further comprisesthe instance identifier of the first VNF; and wherein the method furthercomprises performing, before values are assigned to the M commonparameters and the modifiable attributes parameter in the VNFD:determining, by the VNFM, the identifier of the VNFD of the first VNFassociated with the instance identifier of the first VNF; anddetermining, by the VNFM, the VNFD of the first VNF based on theidentifier of the VNFD of the first VNF.
 6. The method according toclaim 3, further comprising performing, after the creating an instanceidentifier of the first VNF: creating, by the VNFM, VNF informationstorage space, wherein the VNF information storage space is associatedwith storage of the N dedicated parameters and the value of eachdedicated parameter of the N dedicated parameters.
 7. The methodaccording to claim 1, further comprising performing, in response to oneof the first assignment indications indicating to obtain a value of oneof the common parameters from the NFVO, before the sending, by the NFVO,a VNF instantiation request: setting, by the NFVO, the value of thecommon parameter.
 8. A communication apparatus, comprising: atransceiver configured to perform communication; a processor; and anon-transitory computer readable memory storing a program for executionby the processor, the program including instructions to: receive aModify virtual network function (VNF) Information operation, wherein theModify VNF Information operation comprises a modifiable attributesparameter, wherein the modifiable attributes parameter comprises Ndedicated parameters and a value of each dedicated parameter of the Ndedicated parameters, wherein the N dedicated parameters and the valueof each dedicated parameter of the N dedicated parameters are parametersrequired for instantiating a first VNF, wherein N is an integer, andwherein N≥1; obtain a virtual network function descriptor (VNFD) of thefirst VNF, wherein the VNFD of the first VNF comprises M commonparameters, the modifiable attributes parameter, M first assignmentindications, and one second assignment indication, wherein one of thefirst assignment indications indicates to obtain a value of one of thecommon parameters from a virtualization service requestor, wherein thesecond assignment indication indicates to obtain a value of themodifiable attributes parameter from a virtualization service provider,wherein M is an integer, and wherein M≥1; assign the N dedicatedparameters and the value of each dedicated parameter to the modifiableattributes parameter in the VNFD based on the second assignmentindication, and obtain a first updated VNFD as a result of assigning thevalues of the N dedicated parameters, wherein receive a VNFinstantiation request, wherein the VNF instantiation request comprisesthe M common parameters and a value of each common parameter, andwherein the M common parameters and the value of each common parameterare parameters required for instantiating the first VNF; assign thevalues of the M common parameters to corresponding common parameters inthe first updated VNFD based on the first assignment indications, andobtain a second updated VNFD as a result of assigning the values of theM common parameters; and deploy the first VNF based on the secondupdated VNFD.
 9. The apparatus according to claim 8, wherein thevirtualization service requestor is at least one of a NFVO or anoperations support system/business support system (OSS/BSS), and whereinthe virtualization service provider is a VNFM.
 10. The apparatusaccording to claim 9, wherein the program further includes instructionsto: receive a Create VNF Identifier operation sent by the NFVO, whereinthe Create VNF Identifier operation comprises an identifier of the VNFDof the first VNF; create an instance identifier of the first VNF, andestablish a correspondence between the instance identifier of the firstVNF and the identifier of the VNFD of the first VNF; and send theinstance identifier of the first VNF to the NFVO.
 11. The apparatusaccording to claim 10, wherein program further includes instructions to:send a VNFD obtaining request to the NFVO, wherein the VNFD obtainingrequest comprises the identifier of the VNFD of the first VNF; andreceive a VNFD response sent by the NFVO, wherein the VNFD responsecomprises the VNFD of the first VNF.
 12. The apparatus according toclaim 10, wherein program further includes instructions to: determinethe identifier of the VNFD of the first VNF associated with the instanceidentifier of the first VNF; and determine the VNFD of the first VNFbased on the identifier of the VNFD of the first VNF.
 13. The apparatusaccording to claim 10, wherein program further includes instructions to:create VNF information storage space, wherein the VNF informationstorage space is associated with storage of the N dedicated parametersand the value of each dedicated parameter of the N dedicated parameters.14. A communication system, comprising: a network functionvirtualization orchestrator (NFVO), comprising: a first transceiverconfigured to perform communication; a first processor; and a firstnon-transitory computer readable memory storing a first program forexecution by the first processor; and a virtualized network functionmanager (VNFM), comprising: a second transceiver configured to performcommunication; a second processor; and a second non-transitory computerreadable memory storing a second program for execution by the secondprocessor: wherein the first program includes first instructions: send aModify virtual network function (VNF) Information operation, wherein theModify VNF Information operation comprises a modifiable attributesparameter, wherein the modifiable attributes parameter comprises Ndedicated parameters and a value of each dedicated parameter of the Ndedicated parameters, wherein the N dedicated parameters and the valueof each dedicated parameter are parameters required for instantiating afirst VNF, wherein N is an integer, and wherein N≥1; send a virtualnetwork function descriptor (VNFD) of the first VNF, wherein the VNFD ofthe first VNF comprises M common parameters, the modifiable attributesparameter, M first assignment indications, and one second assignmentindication, wherein one of the first assignment indications indicates toobtain a value of one of the common parameters of the M commonparameters from a virtualization service requestor, and wherein thesecond assignment indication indicates to obtain a value of themodifiable attributes parameter from a virtualization service provider;and send a VNF instantiation request, wherein the VNF instantiationrequest comprises the M common parameters and a value of each commonparameter of the M common parameters, wherein the M common parametersand the value of each common parameter are parameters required forinstantiating the first VNF, wherein M is an integer, and wherein M≥1;and wherein the second program includes second instructions to: receivethe Modify VNF Information operation; obtain the VNFD of the first VNF;assign the N dedicated parameters and the value of each dedicatedparameter of the N dedicated parameters to the modifiable attributesparameter in the VNFD based on the second assignment indication, andobtain a first updated VNFD as a result of assigning then N dedicatedparameters; receive the VNF instantiation request; assign the values ofthe M common parameters to corresponding common parameters in the firstupdated VNFD based on the first assignment indications, and obtain asecond updated VNFD as a result of assigning then M common parameters;and deploy the first VNF based on the second updated VNFD.
 15. Thesystem according to claim 14, wherein the virtualization servicerequestor is at least one of an NFVO or an operations supportsystem/business support system (OSS/BSS), and wherein the virtualizationservice provider is a VNFM.
 16. The system according to claim 15,wherein the second instructions further include instructions to: receivea Create VNF Identifier operation sent by the NFVO, wherein the CreateVNF Identifier operation comprises an identifier of the VNFD of thefirst VNF; create an instance identifier of the first VNF, and establisha correspondence between the instance identifier of the first VNF andthe identifier of the VNFD of the first VNF; and send the instanceidentifier of the first VNF to the NFVO.
 17. The system according toclaim 16, wherein the second instructions further include instructionsto: send a VNFD obtaining request to the NFVO, wherein the VNFDobtaining request comprises the identifier of the VNFD of the first VNF;and receive a VNFD response sent by the NFVO, wherein the VNFD responsecomprises the VNFD of the first VNF.
 18. The system according to claim16, wherein the second instructions further include instructions to:determine the identifier of the VNFD of the first VNF associated withthe instance identifier of the first VNF; and determine the VNFD of thefirst VNF based on the identifier of the VNFD of the first VNF.
 19. Thesystem according to claim 16, wherein the second instructions furtherinclude instructions to: create VNF information storage space, whereinthe VNF information storage space is associated with storage of the Ndedicated parameters and the value of each dedicated parameter of the Ndedicated parameters.
 20. The system according to claim 14, whereinfirst instructions further include instructions to: set the value of thecommon parameter.